Method and system to provide secure exchange of data between mobile phone and computer system

ABSTRACT

Systems and methods of providing a secure access layer in a mobile phone and a computer system coupled to the mobile phone to provide authentication for transmitting data between the phone and the computer system.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation application of U.S. patent application Ser. No. 11/759,212, filed Jun. 6, 2007, entitled “Method and System to Provide Secure Exchange of Data Between Mobile Phone and Computer System,” which claims the benefit of the filing date of U.S. Provisional Patent Application Ser. No. 60/811,583, filed Jun. 6, 2006 and entitled “Secure Access Layer,” the disclosures of which are hereby incorporated herein by reference.

BACKGROUND OF THE INVENTION

Mobile, or cellular phones can be electronically connected to PCs for the purpose of phonebook transfers, firmware update or transfers of content. However, when a mobile phone is electronically connected to a PC, it is vulnerable to unauthorized access by computer virus and other malicious programs.

FIG. 1 shows an example of the system and method 100 by which a mobile phone may connect to a PC as currently known in the art. Cellular phone 101, running operating system and applications 115, connects via line 121 (for example, a USB or serial line to a PC (everything above line 120 is located inside the PC, not shown) running phone access software instance 103, which accesses media content 104 and phonebook 105. However, this current approach shown in example 100 offers two ways in which a malicious program 106a or 106b can access phone 101. One way, used by rogue software 106 a, is via the applications programming interface (API) 107 provided by the Dynamic Linked Library (DLL) 108. A DLL is a software library that provides phone-specific functions 109 used to access data on the connected mobile phone. Another way, used by rogue software 106 b, is to access the phone via driver 110.

SUMMARY OF THE DESCRIPTION

Systems and methods of providing a secure access layer in a mobile phone and a computer system coupled to the mobile phone to provide authentication for transmitting data between the phone and the computer system, are described here. Some embodiments of the present disclosure are summarized in this section.

In one embodiment, the method, which may be implemented on a system, comprises a first secure access layer stored within a mobile telephone, coupled to a separate computer system, sending an authentication request to a second secure access layer stored within the separate computer system, to determine if the first secure access layer of the mobile telephone and the second secure access layer of the separate computer system, are matching, wherein the second secure access layer of the separate computer system is stored within a dynamic linked library comprising of executable program modules including phone-specific functions used to access data on the mobile phone connected to the computer system.

The first secure access layer within the mobile telephone confirming authenticity of the second secure access layer within the separate computer system by determining the first secure access layer of the mobile telephone and the second secure access layer of the separate computer are matching.

In response to the first secure access layer within the mobile telephone confirming authenticity of the second secure access layer within the separate computer system by determining the first secure access layer of the mobile telephone and the second secure access layer of the separate computer system are matching, the first secure access layer of the mobile telephone granting authorization to the dynamic linked library to transmit data between the mobile telephone and the separate computer system.

The present disclosure includes methods and apparatuses which perform these methods, including processing systems which perform these methods, and computer readable media which when executed on processing systems cause the systems to perform these methods.

Other features of the present disclosure will be apparent from the accompanying drawings and from the detailed description which follows.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements.

FIG. 1 shows an example of the system and method by which a mobile phone may connect to a PC as currently known in the art.

FIG. 2 shows an exemplary overview of a system for communication between a cellular phone and a PC.

FIG. 3 shows a simplified example of the system and method by which a mobile phone may connect to a PC according to the novel art of this disclosure.

FIG. 4 presents a flow diagram describing the process, in accordance with one embodiment.

DETAILED DESCRIPTION OF THE EMBODIMENT

The following description and drawings are illustrative and are not to be construed as limiting. Numerous specific details are described to provide a thorough understanding of the disclosure. However, in certain instances, well-known or conventional details are not described in order to avoid obscuring the description. References to one or an embodiment in the present disclosure can be, but not necessarily are, references to the same embodiment; and, such references mean at least one.

Reference in this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the disclosure. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described which may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements for some embodiments but not other embodiments.

Embodiments of the present disclosure include systems and methods of providing a secure access layer in a mobile phone and a computer system coupled to the mobile phone to provide authentication for transmitting data between the phone and the computer system.

FIG. 2 shows an exemplary overview of a system 200 for communication between a cellular phone 101 and a PC 201. PC 201 has a hard drive 202, which typically contains data and applications, an operating system, etc. Said PC is running software instance 203 that can communicate with and program a cellular phone, such as cellular phone 101, through universal serial bus (USB) port 204 via cable 205. It is clear that other means of communications may be used, including but not limited to USB connection, serial port connection, or custom and/or mixed connections, as well as wireless connections such as Bluetooth, WiFi, or over-the-air access, as offered by many carriers today.

FIG. 3 shows a simplified example of the system and method 300 by which a mobile telephone 301 may connect to a PC, such as PC 201 (not shown) according to the novel art of this disclosure. Both the DLL 308 and the mobile telephone firmware contain a Secure Access Layer (SAL) 302 a and 302 b, respectively, which provide access authentication and authorization between the application 103, the DLL 308 and the mobile telephone 301. If a malicious program were to try to access the DLL 308 directly, bypassing the application 103, it fails the authentication process with the DLL 308. Similarly, if a malicious program were to try to access the telephone 301 directly using the device driver 110, it fails the authentication process with the telephone, because the telephone-side Secure Access software 302 b communicates only with the DLL that has the matching Secure Access software 302 a. This approach can also be used to secure data in the telephone from illicit access, because unauthenticated accesses are blocked by Secure Access software 302 b before reaching, for example, telephone operating system and application(s) 115.

FIG. 4 presents a flow diagram describing the process of an SAL in a mobile telephone communicating with an SAL of a computer system to determine authenticity before receiving or sending data. In process 402, a communication monitor of the telephone (which can be part of the telephone operating system) detects that the telephone has been coupled to a computer system. In one embodiment, the “monitor” monitors any changes in any of the communication ports of the telephone. In response, in process 404 the SAL of the mobile telephone transmit a request to the computer system to determine if the computer system has a matching SAL. In one embodiment, the monitor's detection of a computer system being connected initiates the request of the SAL to be issued.

In one embodiment, the telephone SAL would request the computer SAL to identify itself. That would typically result in a certificate of authenticity exchange (e.g., a PKI certificate exchange), as described in more detail below. The communication protocol used to transmit the request from the SAL of the mobile telephone to the SAL of the computer system, may depend on the communication port of the mobile telephone. Each type of communication port comes with its own set of protocols, and typically one or more would be suitable to effect such an exchange.

In process 406, the mobile telephone receives the authentication data from the computer system. In one embodiment, the authentication data comprises a certificate of authenticity. In one embodiment, the certificate comprises Public Key Infrastructure (PKI) certificate. In alternative embodiments, other types of certificates may be used without departing from the scope of the present invention.

In one embodiment, the certificate is stored in the dynamic linked library and is accessed by the SAL and/or the driver 123 of the computer system, which responds to the request from the mobile telephone and provides the certificate to the requesting mobile telephone.

Upon receipt of the authentication data received from the computer system, in process 408, the SAL of the mobile telephone determines if the computer system is authorized to exchange data with the mobile telephone. In one embodiment, the SAL of the mobile telephone compares a certificate of authenticity in the SAL of the mobile telephone, with a certificate of authenticity received from the computer system to determine.

In process 410, if the SAL of the mobile telephone determines the certificates of authenticity are matching, the SAL permits the dynamic linked library to exchange data with the telephone operating system or applications on the mobile telephone. In one embodiment, the telephone specific functions of the dynamic linked library are used to exchange data between the operating system or applications of the mobile telephone, and a telephone access application of the computer system, which may provide access to data stored on the computer system, such as media content and phonebook data.

In process 412, if the SAL of the mobile telephone determines the certificates of authenticity are not matching, the SAL of the mobile telephone restricts the dynamic linked library from exchanging data with the telephone operating system or applications on the mobile phone. In one embodiment, if the SAL of the mobile telephone does not authenticate the SAL of the computer system, the SAL of the mobile telephone may present a false communication error with the telephone.

The machine-readable medium, as used herein, is an exemplary embodiment, and the term “machine-readable medium” as used herein includes a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “machine-readable medium” shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present disclosure. In general, the routines executed to implement the embodiments of the disclosure, may be implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions referred to as “computer programs.” The computer programs typically comprise one or more instructions set at various times in various memory and storage devices in a computer, and that, when read and executed by one or more processors in a computer, cause the computer to perform operations to execute elements involving the various aspects of the disclosure.

Moreover, while embodiments have been described in the context of fully functioning computers and computer systems, those skilled in the art will appreciate that the various embodiments are capable of being distributed as a program product in a variety of forms, and that the disclosure applies equally regardless of the particular type of machine or computer-readable media used to actually effect the distribution. Examples of computer-readable media include but are not limited to recordable type media such as volatile and non-volatile memory devices, floppy and other removable disks, hard disk drives, optical disks (e.g., Compact Disk Read-Only Memory (CD ROMS), Digital Versatile Disks, (DVDs), etc.), among others, and transmission type media such as digital and analog communication links.

Although embodiments have been described with reference to specific exemplary embodiments, it will be evident that the various modification and changes can be made to these embodiments. Accordingly, the specification and drawings are to be regarded in an illustrative sense rather than in a restrictive sense. The foregoing specification provides a description with reference to specific exemplary embodiments. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope as set forth in the following claims. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense. 

What is claimed is:
 1. A method comprising: sending, by a first secure access layer operating on a mobile telephone, an authentication request to a second secure access layer operating on a computer system that is separate from, and in communication with, the mobile telephone, wherein the second secure access layer is included within a dynamic linked library comprising phone-specific functions used to access data on the mobile telephone, the first secure access layer is configured to communicate only with the dynamic linked library, and the dynamic linked library stores a first certificate of authenticity; in response to the authentication request, receiving the first certificate from the second secure access layer; confirming, by the first secure access layer, using the first certificate, authenticity of the second secure access layer by determining the first secure access layer and the second secure access layer are matching, wherein the confirming includes comparing a second certificate of authenticity of the first secure access layer with the first certificate; and in response to confirming authenticity of the second secure access layer, granting, by the first secure access layer, authorization to the dynamic linked library to transmit data between the mobile telephone and the computer system.
 2. The method of claim 1, wherein the first certificate is a public key infrastructure certificate of authenticity and the second certificate is a public key infrastructure certificate of authenticity.
 3. The method of claim 2, further comprising: in response to confirming authenticity of the second secure access layer, granting authorization, by the first secure access layer, to a phone access software instance on the computer system to transmit data between the mobile telephone and the computer system.
 4. The method of claim 3, wherein the phone access software instance on the computing system provides access to media content stored on the computer system.
 5. The method of claim 3, wherein the phone access software instance on the computing system provides access to a phonebook stored on the computer system.
 6. A non-transitory machine-readable medium storing instructions that, when executed by a mobile telephone, cause the mobile telephone to: send, by a first secure access layer operating on the mobile telephone, an authentication request to a second secure access layer operating on a computer system that is separate from, and in communication with, the mobile telephone, wherein the second secure access layer is included within a dynamic linked library comprising phone-specific functions used to access data on the mobile telephone, the first secure access layer is configured to communicate only with the dynamic linked library, and the dynamic linked library stores a first certificate of authenticity; in response to the authentication request, receive the first certificate from the second secure access layer; confirm, by the first secure access layer, using the first certificate, authenticity of the second secure access layer by determining the first secure access layer and the second secure access layer are matching, wherein the confirming includes comparing a second certificate of authenticity of the first secure access layer with the first certificate; and in response to confirming authenticity of the second secure access layer, grant, by the first secure access layer, authorization to the dynamic linked library to transmit data between the mobile telephone and the computer system.
 7. The machine-readable medium of claim 6, wherein the first certificate is a public key infrastructure certificate of authenticity and the second certificate is a public key infrastructure certificate of authenticity.
 8. The machine-readable medium of claim 7, wherein the medium further stores instructions for causing the mobile telephone to: in response to confirming authenticity of the second secure access layer, grant, by the first secure access layer, authorization to a phone access software instance on the computer system to transmit data between the mobile telephone and the computer system.
 9. The machine-readable medium of claim 8, wherein the phone access software instance on the computing system provides access to media content stored on the computer system.
 10. The machine-readable medium of claim 8, wherein the phone access software instance on the computing system provides access to a phonebook stored on the computer system.
 11. A mobile telephone comprising: a processor; and memory coupled to the processor and storing instructions that, when executed by the processor, cause the mobile telephone to: send, by a first secure access layer operating on the mobile telephone, an authentication request to a second secure access layer operating on a computer system that is separate from, and in communication with, the mobile telephone, wherein the second secure access layer is included within a dynamic linked library comprising phone-specific functions used to access data on the mobile telephone, the first secure access layer is configured to communicate only with the dynamic linked library, and the dynamic linked library stores a first certificate of authenticity; in response to the authentication request, receive the first certificate from the second secure access layer; confirm, by the first secure access layer, using the first certificate, authenticity of the second secure access layer by determining the first secure access layer and the second secure access layer are matching, wherein the confirming includes comparing a second certificate of authenticity of the first secure access layer with the first certificate; and in response to confirming authenticity of the second secure access layer, grant, by the first secure access layer, authorization to the dynamic linked library to transmit data between the mobile telephone and the computer system.
 12. The mobile telephone of claim 11, wherein the first certificate is a public key infrastructure certificate of authenticity and the second certificate is a public key infrastructure certificate of authenticity.
 13. The mobile telephone of claim 12, wherein the memory further stores instructions for causing the mobile telephone to: in response to confirming authenticity of the second secure access layer, grant, by the first secure access layer, authorization to a phone access software instance on the computer system to transmit data between the mobile telephone and the computer system.
 14. The mobile telephone of claim 13, wherein the phone access software instance on the computing system provides access to media content stored on the computer system.
 15. The mobile telephone of claim 13, wherein the phone access software instance on the computing system provides access to a phonebook stored on the computer system. 